

<!doctype html>

<html lang="en" data-content_root="../">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />

    <title>skidl.erc module &#8212; SKiDL 2.2.0 documentation</title>
    <link rel="stylesheet" type="text/css" href="../_static/pygments.css?v=fa44fd50" />
    <link rel="stylesheet" type="text/css" href="../_static/bizstyle.css?v=a66e137f" />
    
    <script src="../_static/documentation_options.js?v=b21de401"></script>
    <script src="../_static/doctools.js?v=9bcbadda"></script>
    <script src="../_static/sphinx_highlight.js?v=dc90522c"></script>
    <script src="../_static/bizstyle.js"></script>
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <meta name="viewport" content="width=device-width,initial-scale=1.0" />
    <!--[if lt IE 9]>
    <script src="_static/css3-mediaqueries.js"></script>
    <![endif]-->
  </head><body>
    <h1 id="site-title"><a href="../../../"><img src="../../../images/slim_banner.png" width="100%"></a></h1>
    
    <div class="related" role="navigation" aria-label="Related">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             accesskey="I">index</a></li>
        <li class="right" >
          <a href="../py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="nav-item nav-item-0"><a href="../index.html">SKiDL 2.2.0 documentation</a> &#187;</li>
        <li class="nav-item nav-item-this"><a href="">skidl.erc module</a></li> 
      </ul>
    </div>  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <section id="module-skidl.erc">
<span id="skidl-erc-module"></span><h1>skidl.erc module<a class="headerlink" href="#module-skidl.erc" title="Link to this heading">¶</a></h1>
<p>Electrical Rule Checking (ERC) in SKiDL.</p>
<p>This module provides functions for verifying the electrical correctness of SKiDL circuits.
It includes default ERC functions for circuits, parts, pins, and nets that check for
common issues such as unconnected pins, pin conflicts, and insufficient drive strength.
These functions can be customized or extended to implement domain-specific design rules.</p>
<dl class="py function">
<dt class="sig sig-object py" id="skidl.erc.dflt_circuit_erc">
<span class="sig-prename descclassname"><span class="pre">skidl.erc.</span></span><span class="sig-name descname"><span class="pre">dflt_circuit_erc</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">circuit</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/skidl/erc.html#dflt_circuit_erc"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#skidl.erc.dflt_circuit_erc" title="Link to this definition">¶</a></dt>
<dd><p>Perform electrical rules check on an entire circuit.</p>
<p>This function checks all nets, parts, and interfaces in the circuit
for electrical rule violations. It first merges multi-segment nets, then
runs ERC checks on each unique net once to prevent duplicate error messages.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>circuit</strong> (<a class="reference internal" href="skidl.circuit.html#skidl.circuit.Circuit" title="skidl.circuit.Circuit"><em>Circuit</em></a>) – The circuit to check for rule violations.</p>
</dd>
</dl>
</dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="skidl.erc.dflt_net_erc">
<span class="sig-prename descclassname"><span class="pre">skidl.erc.</span></span><span class="sig-name descname"><span class="pre">dflt_net_erc</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">net</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/skidl/erc.html#dflt_net_erc"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#skidl.erc.dflt_net_erc" title="Link to this definition">¶</a></dt>
<dd><p>Perform electrical rules check on a specific net.</p>
<p>This function verifies that the net has pins connected to it, checks for
pin conflicts between connected pins, and ensures the net has sufficient
drive strength for all pins that require it.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>net</strong> (<a class="reference internal" href="skidl.net.html#skidl.net.Net" title="skidl.net.Net"><em>Net</em></a>) – The net to check for rule violations.</p>
</dd>
</dl>
</dd></dl>

<dl class="py function">
<dt class="sig sig-object py" id="skidl.erc.dflt_part_erc">
<span class="sig-prename descclassname"><span class="pre">skidl.erc.</span></span><span class="sig-name descname"><span class="pre">dflt_part_erc</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">part</span></span></em><span class="sig-paren">)</span><a class="reference internal" href="../_modules/skidl/erc.html#dflt_part_erc"><span class="viewcode-link"><span class="pre">[source]</span></span></a><a class="headerlink" href="#skidl.erc.dflt_part_erc" title="Link to this definition">¶</a></dt>
<dd><p>Perform electrical rules check on a specific part.</p>
<p>This function checks each pin of the part for rule violations such as
unconnected pins that should be connected or connected pins that should
not be connected (NOCONNECT).</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
<dd class="field-odd"><p><strong>part</strong> (<a class="reference internal" href="skidl.part.html#skidl.part.Part" title="skidl.part.Part"><em>Part</em></a>) – The part to check for rule violations.</p>
</dd>
</dl>
</dd></dl>

</section>


            <div class="clearer"></div>
          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="Main">
        <div class="sphinxsidebarwrapper">
  <div>
    <h3><a href="../index.html">Table of Contents</a></h3>
    <ul>
<li><a class="reference internal" href="#">skidl.erc module</a><ul>
<li><a class="reference internal" href="#skidl.erc.dflt_circuit_erc"><code class="docutils literal notranslate"><span class="pre">dflt_circuit_erc()</span></code></a></li>
<li><a class="reference internal" href="#skidl.erc.dflt_net_erc"><code class="docutils literal notranslate"><span class="pre">dflt_net_erc()</span></code></a></li>
<li><a class="reference internal" href="#skidl.erc.dflt_part_erc"><code class="docutils literal notranslate"><span class="pre">dflt_part_erc()</span></code></a></li>
</ul>
</li>
</ul>

  </div>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="../_sources/rst_output/skidl.erc.rst.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
<search id="searchbox" style="display: none" role="search">
  <h3 id="searchlabel">Quick search</h3>
    <div class="searchformwrapper">
    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>
    </div>
</search>
<script>document.getElementById('searchbox').style.display = "block"</script>
        </div>
      </div>
      <div class="clearer"></div>
    </div>
    <div class="related" role="navigation" aria-label="Related">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             >index</a></li>
        <li class="right" >
          <a href="../py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="nav-item nav-item-0"><a href="../index.html">SKiDL 2.2.0 documentation</a> &#187;</li>
        <li class="nav-item nav-item-this"><a href="">skidl.erc module</a></li> 
      </ul>
    </div>
    <div class="footer" role="contentinfo">
    &#169; Copyright 2016-2025, Dave Vandenbout.
      Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 8.2.3.
    </div>
  </body>
</html>